package org.dromara.quick.chat.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.github.linpeilie.annotations.AutoMapper;
import lombok.Data;
import org.dromara.quick.chat.model.vo.ImSocialPrivacySettingVO;

/**
 * 社交软件中的隐私设置表，用于存储用户的隐私设置信息
 * @TableName im_social_privacy_setting
 */
@TableName(value ="im_social_privacy_setting")
@Data
@AutoMapper(target = ImSocialPrivacySettingVO.class)
public class ImSocialPrivacySetting {
    /**
     * 隐私设置记录的唯一标识，系统自动生成，用于区分不同的隐私设置记录
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 设置隐私的用户编号，关联用户表中的用户编号
     */
    private Long userId;

    /**
     * 好友删除时长，单位为天，若设置为永久好友，该值可为 NULL
     */
    private Integer friendDeleteDuration;

    /**
     * 删除聊天记录的策略，0 代表退出聊天框时删除，1 代表退出应用时删除
     */
    private Integer chatRecordDeleteStrategy;

    /**
     * 聊天记录的保密密码，用于保护聊天记录隐私
     */
    private String chatRecordPassword;

    /**
     * 二维码查找方式的开启状态，0 代表未开启，1 代表已开启
     */
    private Integer qrCodeSearch;

    /**
     * GPS 查找方式的开启状态，0 代表未开启，1 代表已开启
     */
    private Integer gpsSearch;

    /**
     * 社区沟通查找方式的开启状态，0 代表未开启，1 代表已开启
     */
    private Integer communityCommunicationSearch;

    /**
     * 动态沟通查找方式的开启状态，0 代表未开启，1 代表已开启
     */
    private Integer postCommunicationSearch;

    /**
     * 群聊沟通查找方式的开启状态，0 代表未开启，1 代表已开启
     */
    private Integer groupChatCommunicationSearch;

    /**
     * 积分支付的密码，用于保护积分支付安全
     */
    private String creditPaymentPassword;
}
